package com.ym.medical.domain.entity;

import com.ym.common.constant.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.persistence.Table;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 月初出账，月底打款对象 sys_audit
 *
 * @author ym
 * @date 2020-08-24
 */
@ApiModel("月初出账，月底打款-实体")
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Table(name = "sys_audit")
public class SysAuditEntity extends BaseEntity {

	private static final long serialVersionUID = 1L;

	/**
	 * 对账时间段
	 */
	@ApiModelProperty("对账时间段")
	private String timePeroid;

	/**
	 * 账户ID
	 */
	@ApiModelProperty("账户ID")
	private Long accountId;

	/**
	 * 提现银行卡号
	 */
	@ApiModelProperty("提现银行卡号")
	private String cardNo;

	/**
	 * 提现订单号
	 */
	@ApiModelProperty("提现订单号")
	private String tdNo;

	/**
	 * 提现金额
	 */
	@ApiModelProperty("提现金额")
	private BigDecimal amount;

	/**
	 * 平台抽成金额
	 */
	@ApiModelProperty("平台抽成金额")
	private Double drawAmount;

	/**
	 * 提现手续费(平台微信/支付宝账号转银行卡手续费)
	 */
	@ApiModelProperty("提现手续费(平台微信/支付宝账号转银行卡手续费)")
	private Double withdrawFee;

	/**
	 * 个人所得税
	 */
	@ApiModelProperty("个人所得税")
	private Double incomeTax;

	/**
	 * 实际到账金额(用户实际提现金额)
	 */
	@ApiModelProperty("实际到账金额(用户实际提现金额)")
	private Double actIncomeAmount;

	/**
	 * 结算状态(01：已出账、:02：已结算:03：已作废)
	 */
	@ApiModelProperty("结算状态(01：已出账、:02：已结算:03：已作废)")
	private String settlementStatus;

	/**
	 * 出账时间
	 */
	@ApiModelProperty("出账时间")
	private Date billingTime;

	/**
	 * 结算人(系统生成/人工创建)
	 */
	@ApiModelProperty("结算人(系统生成/人工创建)")
	private Long settlementPerson;

	/**
	 * 修改时间(结算/作废时间)
	 */
	@ApiModelProperty("修改时间(结算/作废时间)")
	private Date modifyTime;

	/**
	 * 修改人(结算/作废人)
	 */
	@ApiModelProperty("修改人(结算/作废人)")
	private Long modifierId;

	/**
	 * 出账开始时间
	 */
	@ApiModelProperty("出账开始时间")
	private Date startTime;

	/**
	 * 出账结束时间
	 */
	@ApiModelProperty("出账结束时间")
	private Date endTime;

}
